package com.sls.web.manager.game.service;

import java.util.List;

import com.sls.web.manager.game.pojo.NutsNet;
import com.sls.web.manager.game.pojo.NutsNetOrder;
import com.sls.web.manager.game.querybean.NutsNetOrderQuery;
import com.sls.web.manager.game.querybean.NutsNetQuery;
import com.sls.web.manager.page.Pagination;
import com.sls.web.manager.pojo.UserInfoVO;

public interface NutsNetService {

	/**
	 * 确认审核
	 * 
	 * @param nutsNetId
	 * @param userInfoVO
	 * @return
	 * @throws Exception
	 */
	public boolean confirmAudit(String suppliersId, int priceRatio,
			UserInfoVO userInfoVO) throws Exception;

	/**
	 * 分页查询
	 * 
	 * @param nutsNetQuery
	 * @param userInfoVO
	 * @return
	 * @throws Exception
	 */
	public Pagination<NutsNet> queryNutsNet(NutsNetQuery nutsNetQuery,
			UserInfoVO userInfoVO) throws Exception;

	/**
	 * 单条查询
	 * 
	 * @param id
	 * @param userInfoVO
	 * @return
	 * @throws Exception
	 */
	public NutsNet queryNutsNetById(String id, UserInfoVO userInfoVO)
			throws Exception;

	/**
	 * 合作方编号查询
	 * 
	 * @param nutsNet
	 * @param userInfoVO
	 * @return
	 * @throws Exception
	 */
	public List<NutsNet> querySupUserId(NutsNet nutsNet, UserInfoVO userInfoVO)
			throws Exception;

	/**
	 * 余额查询
	 * 
	 * @param nutsNetQuery
	 * @param userInfoVO
	 * @return
	 * @throws Exception
	 */
	public NutsNet queryBalance(NutsNetQuery nutsNetQuery, UserInfoVO userInfoVO)
			throws Exception;

	/**
	 * 订单查询
	 * 
	 * @param nutsNetOrderQuery
	 * @param userInfoVO
	 * @return
	 * @throws Exception
	 */
	public NutsNetOrder queryOrder(NutsNetOrderQuery nutsNetOrderQuery,
			UserInfoVO userInfoVO) throws Exception;

	/**
	 * 单条订单详情
	 * 
	 * @param ptOrderNo
	 * @param userInfoVO
	 * @return
	 * @throws Exception
	 */
	public NutsNetOrder queryOrderById(String ptOrderNo, UserInfoVO userInfoVO)
			throws Exception;

	/**
	 * 商品详细信息同步
	 * 
	 * @param userInfoVO
	 * @throws Exception
	 */
	public void goodsDetailSync(UserInfoVO userInfoVO) throws Exception;

	/**
	 * 批量上架
	 * 
	 * @param userInfoVO
	 * @throws Exception
	 */
	public void batchOnline(String goodsState, UserInfoVO userInfoVO)
			throws Exception;

	/**
	 * 批量下架
	 * 
	 * @param userInfoVO
	 * @throws Exception
	 */
	public void batchOffline(String goodsState, UserInfoVO userInfoVO)
			throws Exception;
}
